Printing apparatus and control method thereof and program

ABSTRACT

It is determined whether or not a change request for changing an array of a plurality of items of job information on a job list screen to a second array being different from a first array is inputted via a user interface. If it is determined that the change request is inputted, a job list screen is displayed in which the array of the plurality of items of job information is changed to the second array. Display contents of the user interface are changed in response to a user operation with respect to a print job displayed on the job list screen. If the change request is inputted prior to the user operation, the job list screen in the second array is redisplayed upon the conclusion of processing due to the user operation. If the change request is not inputted prior to the user operation, the job list screen in the first array is redisplayed.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a printing apparatus that causes a userinterface to display a job list screen displaying a plurality of itemsof job information regarding a plurality of print jobs in apredetermined array, a control method thereof, and a program.

2. Description of the Related Art

A print management system is known in which a plurality of printers, aplurality of client computers, and a print management server areconnected via a network. For such a print management system, a method isproposed in which a single panel for listing all managing print jobs isprovided at a print management server so as to enable a dedicatedoperator to promptly and accurately identify a status of a print job(refer to Japanese Patent Laid-Open No. 2007-272901).

Japanese Patent Laid-Open No. 2007-272901 also proposes a method forsorting an order of print jobs on the single panel provided at the printmanagement server so as to enable the operator to readily find a desiredprint job or information related thereto.

However, with the conventional technique described above, when switchingfrom a screen on which all print jobs are listed to another screen, adisplay format, according to which the print jobs were sorted, is notretained. Consequently, it is difficult to find a desired print job on ascreen listing all print jobs after switching to another screen.Therefore, an instruction for re-sorting the print jobs is required,which in turn disadvantageously requires an operation by an operator.

In addition, in a case where a print management server is shared by aplurality of dedicated operators or the like, demands may arise fordisplaying print jobs in a state where a display order has been set foreach operator. However, conventionally, such demands can not besatisfied.

SUMMARY OF THE INVENTION

An aspect of the present invention is to eliminate the above-describedproblems with the conventional technology.

According to an aspect of the present invention, after a display arrayof job information of print jobs on the job list screen is changed, ifthe job list screen is switched to another screen by a user operationand then the job list screen is restored, then a display array of jobinformation of print jobs on the job list screen is restored to thedisplay array before switching to the another screen. Accordingly, aprinting apparatus with superior operability, a control method thereof,and a program can be provided.

According to an aspect of the present invention, there is provided aprinting apparatus for causing a user interface to display a job listscreen displaying a plurality of items of job information regarding aplurality of print jobs in a first array, the printing apparatuscomprising: a determination unit that determines whether or not a changerequest for changing an array of the plurality of items of jobinformation on the job list screen to a second array being differentfrom the first array is inputted via the user interface; an array changeunit that displays the job list screen in which the array of theplurality of items of job information is changed to the second array, ina case that the determination unit determines that the change request isinputted; a display changeover unit that changes display contents of theuser interface in response to a user operation with respect to a printjob displayed on the job list screen; and a display control unit thatredisplays the job list screen in the second array upon the conclusionof processing due to the user operation in a case that the changerequest is inputted prior to the user operation, and redisplays the joblist screen in the first array in a case that the change request is notinputted prior to the user operation.

Further features and aspects of the present invention will becomeapparent from the following description of exemplary embodiments, withreference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention.

FIG. 1 is a system configuration diagram of an entire print managementsystem according to an exemplary embodiment of the present invention;

FIG. 2 depicts a view illustrating a cross-sectional structure of an MFPaccording to the present embodiment;

FIG. 3 is a block diagram showing a configuration of a controller of theMFP according to the present embodiment;

FIG. 4 is a diagram illustrating an example of an overview of processingby an MFP controller according to the present embodiment;

FIG. 5 is a flowchart describing processing by a job controller, whichis one of the processing programs of the MFP controller according to thepresent embodiment;

FIG. 6 depicts a view illustrating an example of a print setting screenof a printer driver of a client computer according to the presentembodiment;

FIG. 7 depicts a view illustrating an example of a setting screendisplayed when a user specifies a “property” button on the screen shownin FIG. 6 with a pointing device;

FIG. 8 is a diagram describing a structure of print data transferred tothe MFP according to the present embodiment;

FIG. 9 depicts a view illustrating an example of a screen displayed on adisplay unit of a console unit of the MFP according to the presentembodiment;

FIGS. 10A and 10B are diagrams showing an example of screen transitionsof a hold tab displayed when an operator repeatedly touches a“date/time” button on the display unit of the console unit of the MFPaccording to the present embodiment;

FIGS. 11A and 11B are diagrams showing an example of screen transitionsof a hold tab displayed when an operator repeatedly touches a “job name”button on the display unit of the console unit of the MFP according tothe present embodiment;

FIG. 12 depicts a view illustrating an example of a screen displayed onthe display unit of the console unit of the MFP according to the presentembodiment;

FIG. 13 is a diagram describing examples of tables for managing jobs ofthe MFP according to the present embodiment;

FIG. 14 is a diagram describing an example of a user informationmanagement table for managing user information of the MFP according tothe present embodiment;

FIG. 15 is a flowchart describing processing by the MFP controlleraccording to the present embodiment; and

FIGS. 16A and 16B are flowcharts describing display processing of a holdjob list by the MFP controller and processing in response to an inputmade on a touch panel by an operator, according to the presentembodiment.

DESCRIPTION OF THE EMBODIMENTS

Embodiments of the present invention will now be described hereinafterin detail, with reference to the accompanying drawings. It is to beunderstood that the following embodiments are not intended to limit theclaims of the present invention, and that not all of the combinations ofthe aspects that are described according to the following embodimentsare necessarily required with respect to the means to solve the problemsaccording to the present invention.

FIG. 1 is a system configuration diagram of an entire print managementsystem according to an exemplary embodiment of the present invention.

In FIG. 1, a multi function peripheral (MFP) 100, a client computer 200,and a print management server 300 are connected to a network 400. WhileFIG. 1 shows an example in which only one of each of the apparatuses isconnected to the network 400, the number of connected apparatuses isunrestricted.

The MFP 100 is equipped with a scanner unit that reads a document togenerate image data of the document and a printer unit that forms animage on a recording paper, and functions as a printing apparatus havingvarious functions such as those of a network printer and a copier. Theclient computer 200 executes various application programs in compliancewith instructions from an operator and outputs print data to the network400 in response to a print request from the operator. In addition, theclient computer 200 also performs processing so as to assist in themonitoring and control of the MFP 100 and print jobs managed by theprint management server 300. When printing with the MFP 100, applicablemethods include directly transferring print data generated by the clientcomputer 200 to the MFP 100 and transferring the print data to the MFP100 via the print management server 300.

FIG. 2 depicts a view illustrating a cross-sectional structure of theMFP 100 according to the present embodiment.

The MFP 100 is provided with a scanner unit 110 that reads an imagerecorded on a face of a document, a printer unit 160 having respectiveunits 120, 130, 140, and 150, and a controller 170.

The controller 170 is responsible for controlling the entire MFP 100 andis mounted as a printed circuit board including a microprocessor on theMFP. The controller 170 controls the scanner unit 110, performs networkcommunication, and processing in accordance with the contents of variousoperations by an operator, and performs print processing describedbelow.

The scanner unit 110 illuminates a document face, and is provided withan illumination unit 111 that scans and moves and a line CCD 112 thatperforms imaging on reflected light from the document face and convertsthe reflected light into an electric signal. The controller 170A/D-converts signals successively outputted from the line CCD 112, andcaptures the A/D-converted signals as image data to perform variousprocessing thereon.

In addition, in order to scan laser light from a laser element, notshown, which is driven by the controller 170, a laser exposure unit 120of the printer unit 160 includes a polygonal mirror 121 rotated by amotor and a mirror 122 that reflects the laser light towards aphotosensitive drum 135. An image forming unit 130 rotationally drivesthe photosensitive drum 135 and charges the surface of thephotosensitive drum 135 with a charger. Due to the scanning of laserlight by the laser exposure unit 120, the photosensitive drum 135retains an electrostatic latent image on its surface. Developing units131 to 134, having toners of the respective colors of magenta (M), cyan(C), yellow (Y), and black, transfer toner to the electrostatic latentimage formed on the surface of the photosensitive drum 135 to form atoner image corresponding to the electrostatic latent image. The tonerimage formed in this manner on the photosensitive drum 135 istransferred to a recording paper (sheet). For this reason, a transferdrum 136 that rotates with the photosensitive drum 135 is provided. Thetransfer drum 136 wraps a sheet conveyed from a feed/conveyance unit 140around itself using the action of static electricity. By performing,four times, a process in which a toner image of a single color componentgenerated on the photosensitive drum 135 is transferred onto the sheetwrapped around itself, the transfer drum 136 forms a color image havingfour color components on the sheet.

Upon finishing transfer of the toner image of the four color componentsonto the sheet as described above, the controller 170 separates thesheet from the transfer drum 136 and conveys the sheet to a fixing unit150. The fixing unit 150 has a built-in fixing roller 151 heated by aheat source such as a halogen heater. The fixing roller 151 heats andfixes the toner transferred on the sheet conveyed from the image formingunit 130 onto the sheet by heat and pressure. A discharge roller 152discharges the toner-fixed sheet to the outside (finisher).

The MFP 100 according to the present embodiment is also capable ofperforming double-sided printing. A sheet sensor (not shown) is providedon an upstream side (the side of the image forming unit 130) of thedischarge roller 152. Therefore, during double-sided printing, when thesheet sensor detects a trailing edge of a sheet, the controller 170rotationally moves a flapper 153 by a predetermined angle and inverselyrotates the discharge roller 152 to turn the sheet upside down andconveys the sheet towards a double-sided feed path 142 inside thefeed/conveyance unit 140. The feed/conveyance unit 140 includes a sheetstocker 143 for double-sided recording which holds single-side-printedsheets from the aforementioned double-sided feed path 142, as well asone or more sheet cassettes 141 as typified by a paper deck. In responseto an instruction from the controller 170, the feed/conveyance unit 140separates a sheet from a plurality of sheets held in the sheet cassette141 and conveys the sheet to the image forming unit 130, and from theimage forming unit 130 to the fixing unit 150.

Next, a configuration of the controller 170 of the MFP 100 according tothe present embodiment will be described.

FIG. 3 is a block diagram showing a configuration of the controller 170of the MFP 100 according to the present embodiment.

The controller 170 of the MFP 100 includes an MFP controller 1000 thatis provided with: a CPU 301 that is a microprocessor or the like; a RAM302 that stores a processing program and various data, and provides awork area; and a ROM 303 that stores a boot program and various data.The MFP controller 1000 undertakes a role of a traffic regulator which,depending on the application of the MFP, temporarily saves image data,determines a data path among various processing units to be describedlater, and the like. A program to be loaded to the RAM 302 is installedin an HDD 1500, and when an instruction to execute the program(function) is issued, the program is loaded from the HDD 1500 to the RAM302 to be executed.

The controller 170 is provided with a hard disk (hereinafter HDD) 1500that is a large capacity storage device capable of storing data of aplurality of print jobs. However, as long as the capacity is large andrandom access is enabled, the storage device need not be limited to anHDD and any storage device shall suffice. The MFP controller 1000utilizes the HDD 1500 as a buffer. The MFP controller 1000 realizes aplurality of functions including copy processing of image data outputtedfrom the scanner unit 110, and print processing based on print dataoutputted from the client computer 200 or the print management server300 on the network 400, and the like. The MFP 100 comes in two types: afull-color device and a black-and-white device. With the exception ofcolor processing, internal data and the like, these devices share thesame basic components. In addition, since a configuration of thefull-color device is inclusive of a configuration of the black-and-whitedevice, the full-color device will be primarily described herein anddescriptions on the black-and-white device will be occasionally added asneeded.

As shown in FIG. 3, a plurality of processing units are connected to theMFP controller 1000. An input-image processor 1001 reads an image on apaper document or the like and performs image processing on the readimage data. A network interface unit 1003 transmits and receives printdata and apparatus information via the network 400. A document manager1006 performs processing under the control of the MFP controller 1000for storing image data from the input-image processor 1001 and imagedata obtained by analyzing print data received via the network interfaceunit 1003 into the HDD 1500. The document manager 1006 also performsprocessing under the control of the MFP controller 1000 for readingimage data stored in the HDD 1500. Following an instruction by anoperator from a console unit 1008, the MFP controller 1000 determines anoutput destination of image data read from the HDD 1500. For example, ifthe MFP controller 1000 has set a print processor 1007 as the outputdestination, print processing is performed. The document manager 1006compresses image data as required when storing the same into the HDD1500 and, conversely, when reading compressed data stored in the HDD1500, expands (decodes) the compressed data into the original imagedata. For this purpose, the controller 170 is provided with a codec1009. In addition, when print data received via the network interfaceunit 1003 is compressed data such as JPEG, JBIG, ZIP, or the like, theMFP controller 1000 performs control so as to decompress (expand) suchdata by the codec 1009. A resource manager 1010 retains and manages,under the control of the MFP controller 1000, various parameter tablesand the like commonly handled by fonts, color profiles, gamma tables,and the like so as to enable them to be read. In addition, in responseto a request from the MFP controller 1000, the resource manager 1010stores new parameter tables and corrects and modifies existing parametertables.

Next, processing performed when the MFP controller 1000 receives printdata via the network interface unit 1003 will be described.

When the MFP controller 1000 receives print data, raster imageprocessing is performed by a RIP (raster image processor) unit 1011. Inaddition, on an image to be printed, the MFP controller 1000 performsimage processing for printing as required with an output-image processor1012. Furthermore, the MFP controller 1000 stores intermediate data ofprint data and print-ready data (bitmap data for printing or compresseddata thereof) created during such image processing into the HDD 1500 viathe document manager 1006 as required. The processing for storing to theHDD 1500 is asynchronous to the operation of the print processor 1007.

In addition, in concurrence with the print processing timing of theprint processor 1007, the MFP controller 1000 performs processing forreading image data of respective pages stored in the HDD 1500 via thedocument manager 1006 and outputting the image data to the printprocessor 1007. When doing so, the MFP controller 1000 controls a postprocessor 1013 in accordance with the description of the print data. Thepost processor 1013 controls a finisher that performs sheet sortingprocessing and sheet finishing processing.

Furthermore, the console unit 1008 functions as a user interface forselecting various functions and issuing operation instructions. Theconsole unit 1008 is also provided with a high-resolution displayapparatus, various instruction buttons, and a touch panel so as to becapable of presenting various display menus to the operator anddisplaying a preview of image data managed by the document manager 1006.Even when performing copying, the operator is to issue a copyinstruction by operating the console unit 1008.

Next, an example of an overview of processing by the MFP controller 1000according to the present embodiment will be described. The processing isrealized by the CPU 301, the RAM 302 and the ROM 303 storing firmware ofthe MFP controller 1000, and by the various processing units shown inFIG. 3.

FIG. 4 is a diagram illustrating an example of an overview of processingby the MFP controller 1000 according to the present embodiment.

A network interface controller 1601 is responsible for controlling thenetwork interface unit 1003 shown in FIG. 3. In addition, the networkinterface controller 1601 performs processing for analyzing acommunication protocol, receiving print data from the client computer200 or the print management server 300, and transmitting the receivedprint data to a job ticket analyzer 1602. The job ticket analyzer 1602analyzes a job ticket and relays an attribute of a print job to a jobcontroller 1600, registers the print job into a management table (notshown) and stores the print data in a reception buffer 1610. Upondetecting that print data has been stored in the reception buffer 1610,a print data analyzer 1603 commences processing for analyzing the printdata. That is, the print data analyzer 1603 reads print data stored inthe reception buffer 1610, analyzes the print data and generates anobject (intermediate code) corresponding to each command, and stores theobject in an intermediate buffer 1611. While the present embodimentassumes commands supported by the printer unit 160 to be PDL (pagedescription language), besides PDL data, a command may be of any type ofdata as long as per-page printing is enabled.

Upon detecting that data has been stored in the intermediate buffer1611, a rendering processor 1604 commences processing for rendering.That is, the rendering processor 1604 reads intermediate data from theintermediate buffer 1611 on a per-page basis, and in the case of regularprinting (when storage to a Hold queue 1612 has not been instructed),generates one page's worth of image data and stores the image data in animage buffer 1613.

Upon detecting that one page's worth of image data is stored in theimage buffer 1613, an output controller 1605 performs processing forreading the image data and outputting the image data to a printercontroller 1607 responsible for the control of the print processor 1007.In addition, in the case of a print job specifying storage to the Holdqueue 1612, the rendering processor 1604 successively stores renderedimage data of the respective pages in the Hold queue 1612. In this case,the output controller 1605 is not immediately activated, but performsprinting of the job once a print instruction from the Hold queue 1612 isissued by a UI controller 1606. Here, Hold refers to a function in whichdata is not immediately printed but once stored as a print job in astorage device such as an HDD, and printing only commences when a printinstruction is issued from an operator via the console unit 1008. TheHold function is used for test-printing a print job stored in the Holdqueue 1612, and if no problems are found in the print result, forperforming regular printing (plurality of copies) and the like. As aresult, during regular printing, it is no longer necessary tore-transmit the print data from the client computer 200 or the printmanagement server 300 to the MFP 100.

The UI controller 1606 is a unit that controls the user interface andperforms processing for transferring display data to the console unit1008 and notifying the MFP controller 1000 of input from the consoleunit 1008. In the present embodiment, a display unit provided at theconsole unit 1008 is a liquid crystal display. In addition, several keysare disposed at the console unit 1008, and a touch panel is provided infront of the liquid crystal display. The UI controller 1606 performscontrol such as displaying a character string, switching screens, andrelaying a set value to another module in accordance with a useroperation. The job controller 1600 manages jobs within the MFP 100 andcontrols job generation and extinction, job statuses, job processingorders, and the like. In particular, the job controller 1600 isinternally provided with a print execution queue for determiningwhichever of image data of the image buffer 1613 or image data of theHold queue 1612 is to be outputted to the output controller 1605. Whilethe print execution queue may be stored in the HDD 1500, since theamount of information is small, it is hereby assumed that the printexecution queue is stored in the RAM 302 of the MFP controller 1000. Inthe case of a regular print job, information (a job ID to be describedlater) identifying the job is to be automatically set in the printexecution queue. In addition, in the case of a print job stored in theHold queue 1612, the job ID is registered in the print execution queueonly after the operator executes printing. Therefore, the job controller1600 determines whichever of the image buffer 1613 and the Hold queue1612 store the relevant image data based on a job ID registered in theprint execution queue. Once the buffer storing the image data isidentified, control is performed so as to output image data of therespective pages constituting the relevant print job to the outputcontroller 1605.

Next, processing by the job controller 1600 that is one of theprocessing programs of the MFP controller 1000 will be described.

FIG. 5 is a flowchart describing processing by the job controller 1600that is one of the processing programs of the MFP controller 1000according to the present embodiment. The processing shown in theflowchart is to be executed under the control of the CPU 301 inaccordance with a program stored in the RAM 302 of the MFP controller1000.

First, in step S101, the MFP controller 1000 reads the print executionqueue. The process proceeds to step S102 to determine whether anunprinted job exists or not. If the MFP controller 1000 determines thatthere are no unprinted jobs, the process returns to the processing ofstep S101. On the other hand, if the MFP controller 1000 determines instep S102 that there is an unprinted job in the print execution queue,the process proceeds to step S103. In step S103, the MFP controller 1000finds out whether relevant image data is in the image buffer 1613 or inthe Hold queue 1612 from the job ID (to be described later) of theunprinted job, and reads one page's worth of image data to perform printprocessing. Next, the processing of S103 is repeated until it isdetermined in step S104 that printing of all pages has been completed.If the MFP controller 1000 determines in step S104 that print processingfor all pages has been completed, the process proceeds to step S105. Instep S105, the MFP controller 1000 deletes the ID of the print job forwhich printing has been completed from the print execution queue anddeletes the print job on which processing has been completed from theHDD 1500. Moreover, as will be described later, in the case of testprinting, the MFP controller 1000 deletes the job ID from the printexecution queue but not the actual print job.

Meanwhile, various applications and a printer driver for using the MFP100 according to the present embodiment are installed in the clientcomputer 200.

FIG. 6 depicts a view illustrating an example of a print setting screenof a printer driver of the client computer 200 according to the presentembodiment. The printer driver displays this screen when the userselects a print menu of a running application.

“Printer name” 601 in the setting screen is arranged as a pull-down listbox. At this point, when the user selects an MFP to be used, asrepresented by reference numeral 602, a status of the MFP is displayedin “status” therebelow, a type of the printer driver in “type”,information on where the MFP is placed in “where”, and commentinformation from a manager of the MFP in “comment”. These items ofinformation are obtained by issuing a data request message to a relevantMFP when the print setting screen is displayed or when an MFP to be usedis selected. Moreover, when it is desirable to output print data to afile without printing the print data with the MFP, a “print to file”check box 603 is checked. By doing so, print data generated by theprinter driver can be stored as a file in a storage device provided inthe client computer 200.

“Page range” 604 is provided with radio buttons “all”, “current page”,“selection”, and “pages” as items for selecting which pages are to beprinted. The user is to select one of these items (“all” is the defaultsetting). If the user selects “pages” using a pointing device, an editbox transitions to an input-enabled state where the user is to input thenumber of one or more pages to be printed using a keyboard.

Furthermore, a “print what” pull-down list box 605 enables selection ofan attribute of a document to become a print object. A “print” pull-downlist box 606 enables specification of whether all the pages are to beprinted or just odd number or even number pages are to be printed.

“Copies” 607 enables setting the number of copies to be printed. Theuser is to input the number of copies to be printed in a “number ofcopies” spin box. In addition, when printing a plurality of copies perset as opposed to printing per page, a “collate” check box 608 is madeselectable.

“Zoom” 609 enables specification of N-up printing (printing in which aplurality of pages can be laid out on a single printing sheet) through a“pages per sheet” pull-down list box 610. A “scale to paper size”pull-down list box 611 is for selecting a paper size of a paper (sheet)with respect to the size of a document. In addition, a “property” button612 is for further setting more detailed print attributes.

Once the user completes setting of the printer driver setting screen, byspecifying an “OK” button 613, print data may either be transferred tothe MFP 100 to be printed or outputted to a file. In addition, whencanceling printing or file output, specifying a “cancel” button 614shall suffice.

FIG. 7 depicts a view illustrating an example of a setting screendisplayed when the user specifies the “property” button 612 on thescreen shown in FIG. 6 with a pointing device. Moreover, the settingscreen is provided with a plurality of tabs. Initially, a state is shownin which a “page settings” tab has been selected.

A “favorites” pull-down list box 701 is for selecting an optimal pagesetting from predetermined page setting modes. In addition, when theprinter driver detects that a “confirmation” button 702 has beenspecified, a print image of the top page is displayed in a page imagearea displayed above the “confirmation” button 702 in accordance withcontents set by the property setting screen.

With an “output type” pull-down list box 703, an output method isspecified such as having the MFP 100 perform regular printing or storingin the Hold queue 1612 of the MFP 100. In the diagram, “Hold”representing storing in the Hold queue 1612 is specified by a cursor.When storing in the Hold queue 1612 is specified in this manner, theprinter driver generates and outputs print data including a job ticketsignifying storing in the Hold queue 1612. Upon reception thereof, theMFP controller 1000 performs processing for generating image data andsubsequently performs processing up to storing the respective pages inthe Hold queue 1612. In other words, print processing is not performed.Print processing is commenced when the MFP controller 1000 determinesthat a print instruction has been inputted via the console unit 1008.

A “document size” pull-down list box 704 and a “paper scaling” pull-downlist box 705 are for selecting a size of a document to become a printobject and a paper size of a sheet. A “copies” spin box 706 is forinputting the number of copies to be printed, and an “orientation” radiobutton is for selecting a sheet orientation such as “portrait”,“landscape”, and the like. A “layout” pull-down list box 707 is forspecifying N-up printing (printing in which a plurality of pages arelaid out on a single printing face). When a “scaling” check box 708 ischecked, a scale of enlargement/reduction can be designated in % unitsin a “scale” spin box 709. When a “stamp” check box 710 is checked,predetermined stamp types become selectable at a pull-down list box 711.Specifying an “edit stamp” button 712 enables a stamp type to be addedor edited. A “user defined paper” button 713 enables the user to definea sheet. A “page option” button 714 enables the user to set moredetailed page options. In addition, a “restore default” button 715restores various setting contents to default setting contents.

Once the user completes setting of the printer driver property settingscreen, the user designates an “OK” button 716. When it is detected thatthe “OK” button 716 has been designated, the printer driver reflects theprint attributes set on the setting screen to actual printing. A“cancel” button 717 is to be pressed when canceling setting of theproperty setting screen. A “help” button 718 is for displaying a helpscreen of the property setting screen.

At this point, a CPU (not shown) of the client computer 200 detects thatthe “OK” button 613 shown in FIG. 6 has been designated by the user.Consequently, in accordance with a printer driver program, data handedover by an application is received and generation processing of printdata constituted by a job ticket and PDL data is performed.Subsequently, an OS of the client computer 200 transfers the print dataas a print job to the MFP 100 according to the present embodiment.

FIG. 8 is a diagram describing a structure of print data transferred tothe MFP 100 according to the present embodiment. In this case, the printdata includes attribute information (job ticket) and PDL data.

In the example shown in FIG. 8, stored in attribute information (overallsetting) are attribute IDs and respective setting values of “job name”,“number of copies”, “paper size”, “paper type”, “print type”,“orientation”, “color mode”, “output type”, and the like. In addition,it is assumed that attribute information is described in XML format orthe like. Set in each attribute are setting values in accordance withsettings made on the printer driver setting screen shown in FIG. 6 andon the property setting screen shown in FIG. 7. In addition, as shown inFIG. 7, it is assumed that “Hold” has been specified as the output type.

Next, a display example on the console unit 1008 of the MFP 100according to the present embodiment will be described.

FIG. 9 depicts a view illustrating an example of a screen displayed on adisplay unit of the console unit 1008 of the MFP 100 according to thepresent embodiment. A touch panel is used as the display unit of theconsole unit 1008 of the MFP 100 according to the present embodiment. Inaddition, various tabs are provided for different functions. In thepresent embodiment, “copy” and “hold” tabs are provided.

Reference numeral 900 denotes a state where the “hold” tab among the twotabs is active. The display screen is referred to as a main screen ofthe hold tab (hold job list screen). In the hold job list screen, jobinformation of the respective print jobs stored in the Hold queue 1612in the HDD 1500 is displayed in a list format. Only one Hold queue 1612exists in the MFP 100 and is used for the purpose of temporarily storingprint jobs. In addition, in FIG. 9, a job name, a user name, and adate/time (the date and time at which a print job was stored) aredisplayed as job information of a print job stored in the Hold queue1612. Furthermore, job information of the respective print jobs storedin the Hold queue 1612 is displayed in an ascending order of date/time(a chronological order of date/time).

On the hold job list screen, an operator touches a “job name” button 901or a “date/time” button 902 among the job list items. Consequently, jobinformation of the respective print jobs stored in the Hold queue 1612can be sorted and displayed according to name or date/time. When the MFPcontroller 1000 detects that the “job name” button 901 or the“date/time” button 902 has been touched, the MFP controller 1000 sortsthe job information of the respective print jobs stored in the Holdqueue 1612. In other words, the job information is sorted in the orderof “job name” or “date/time” as specified. Subsequently, processing isperformed for reflecting the sorting result onto the display screen ofthe console unit 1008. Touching a line of lines in which the respectivejobs are displayed on the screen shown in FIG. 9 enables selection of aprint job that is a print object. In addition, a plurality of print jobscan be selected. When a plurality of print jobs are selected, sincenumbers (not shown) are to be displayed to the left of the job names ofthe print jobs, a selection order can be discerned by the numbers. Whenselecting a plurality of print jobs and issuing a print instruction,after jobs to be printed are set to a selected state, a “print” button903 is touched. As a result, print processing is commenced according tothe selected order.

In addition, by selecting a print job and touching a button at thebottom of the screen, the operator is able to perform operations on arelevant job. Buttons for specifying such an operation include“preview”, “test print”, “print”, “delete”, and “edit”. “Preview”displays a preview of a selected print job. “Test print” displays a testprint setting of a selected print job. “Print” performs formal printingof a selected print job. “Delete” deletes a selected print job from ahold job list screen (the actual print job is retained). “Edit” enableschanges to be made to the print settings of a selected print job.

A user name and a password can be set when using the MFP 100. Referencenumeral 910 denotes an example of a login screen displayed uponactivation of the MFP 100 when a user name and a password has been setfor the MFP 100. When a user name and a correct password are inputted onthe login screen 910, the login screen transitions to a “copy tab” mainscreen or a “hold tab” main screen. Note that it is similarly assumedthat a touch keyboard is to be displayed on the display screen of theconsole unit 1008 and a user name and a password are to be inputtedusing the touch keyboard.

When a user name and a password have been set for the MFP 100, a“logout” button 904 is displayed. When the MFP controller 1000 detectsthat the “logout” button 904 has been touched, the login screen 910 isdisplayed. Inputting a user name and a corresponding password results insuccessful authentication, whereby the screen returns to the hold joblist screen denoted by reference numeral 900 to enable user operations.

FIGS. 10A and 10B are diagrams showing an example of transitions of ahold tab screen displayed when the operator repeatedly touches(operation for item specification) the “date/time” button 902 on thedisplay unit of the console unit 1008 of the MFP 100 according to thepresent embodiment.

In FIG. 10A, reference numeral 10000 corresponds to the hold job listscreen denoted by reference numeral 900 in FIG. 9. Job information ofthe respective print jobs stored in the Hold queue 1612 is displayed inan ascending order of date/time. At this point, if the MFP controller1000 detects that the “date/time” button 902 has been touched, then theMFP controller 1000 displays a popup dialog and displays a message(sorting in progress) to the effect that job information of therespective print jobs is currently being sorted, as indicated byreference numeral 10001. The MFP controller 1000 waits for the sortprocessing of the job information of the respective print jobs toconclude. When the sort processing is concluded in this manner, the MFPcontroller 1000 displays a hold job list screen as denoted by referencenumeral 10002 (FIG. 10B). Here, job information of the respective printjobs stored in the Hold queue 1612 is displayed in a descending order ofdate/time (a reverse chronological order of date/time). Furthermore, inthis state, if the MFP controller 1000 detects that the “date/time”button 902 has been touched, then the MFP controller 1000 displays apopup dialog indicating that sorting is in progress and waits for thesort processing of the job information of the respective print jobs toconclude, as represented by reference numeral 10003 (FIG. 10B). When thesort processing is concluded, the MFP controller 1000 displays the holdjob list screen denoted by reference numeral 10000. In the hold tabscreen 10000, job information of the respective print jobs stored in theHold queue 1612 are displayed in an ascending order of date/time (achronological order of date/time).

FIGS. 11A and 11B are diagrams showing an example of transitions of ahold tab screen displayed when the operator repeatedly touches the “jobname” button 901 on the display unit of the console unit 1008 of the MFP100 according to the present embodiment.

Reference numeral 1100 denotes a case in which job information of therespective print jobs stored in the Hold queue 1612 are displayed in anascending order of job names. In this case, a list of print jobs in anorder (ascending order) of job names is displayed. In this state, if theMFP controller 1000 detects that the “job name” button 901 has beentouched, then the MFP controller 1000 displays a popup dialog indicatingthat sorting is in progress and waits for the sort processing of the jobinformation of the respective print jobs to conclude, as represented byreference numeral 1101. When the sort processing is concluded, the MFPcontroller 1000 displays a hold job list screen as denoted by referencenumeral 1102 (FIG. 11B). In the hold job list screen 1102, jobinformation of the respective print jobs stored in the Hold queue 1612are displayed in a descending order of job names. Furthermore, in thestate represented by reference numeral 1102, if the MFP controller 1000detects that the “job name” button 901 has been touched, then the MFPcontroller 1000 displays a popup dialog indicating that sorting is inprogress and waits for the sort processing of the job information of therespective print jobs to conclude, as denoted by reference numeral 1103(FIG. 11B). When the sort processing is concluded in this manner, theMFP controller 1000 displays a hold job list screen as denoted byreference numeral 1100 in which job information is displayed in anascending order of job names. In this example, a case is shown in which50 print jobs (documents) are stored in the Hold queue 1612.

In the present embodiment, an array order of job names or date/time isswitched back and forth between an ascending order and a descendingorder in response to a change request made using the “job name” button901 or the “date/time” button 902. However, the present invention is notlimited to this arrangement and job names or date/time may always bedisplayed in an ascending order or a descending order.

FIG. 12 depicts a view illustrating an example of a screen displayed onthe display unit of the console unit 1008 of the MFP 100 according tothe present embodiment. In this case, an example of a hold job listscreen displayed when an operator touches the hold tab is shown. Here,as represented by reference numeral 1100 of FIG. 11A described earlier,a hold job list screen is displayed in which job information isdisplayed in an ascending order of job names.

Reference numeral 1200 denotes a state in which job information of therespective print jobs stored in the Hold queue 1612 is displayed in anascending order of job names and a job corresponding to a job name“document 3” has been selected. In this state, if the MFP controller1000 detects that a “test print” button 1201 has been touched, thescreen shown as shown by numeral 1202 is displayed. This screen 1202 isa display example in a case where the test print has been set for theprint job of “document 3”. A number indicating an order (in this case,“1”) of the aforementioned document is displayed to the left of“document 3”. Moreover, the screen 1202 is provided with the respectivebuttons of “all pages”, “specified pages”, “first page”, “last page”,“cancel”, and “print start”.

When test-printing all pages of a print job, the operator must touch the“all pages” button. On the other hand, when test-printing only a part ofthe pages of a print job, the operator must touch the “specified pages”button. If the “specified pages” button has been touched, when theoperator touches the “first page” button, a first page of the test printcan be inputted using numeric keys provided on the console unit 1008. Inaddition, when the operator touches the “last page” button, a last pageof the test print can be inputted using numeric keys provided on theconsole unit 1008. In the example shown in FIG. 12, a test print of fivepages of page 5 to page 10 is specified in which the first page is page5 and the last page is page 10.

In this state, when the operator touches a “print start” button 1203,test print of the print job commences. In other words, when the MFPcontroller 1000 detects that the “print start” button 1203 has beentouched, the MFP controller 1000 performs processing for registering theprint job in the print execution queue. In addition, if the operatortouches a “cancel” button 1204, the screen 1200 is restored. At thispoint, on the hold job list screen 1200, job information of the printjobs stored in the Hold queue 1612 is redisplayed in the display formatprior to the transition to the test print setting screen or, in otherwords, in a state where a display format for displaying the job names inan ascending order is retained.

FIG. 13 is a diagram describing examples of tables for managing jobs ofthe MFP 100 according to the present embodiment. These tables areretained in the HDD 1500.

A job management table 1300 includes job IDs, pointers to an attributeinformation management table 1301, and pointers to image data 1302. Ajob ID is issued by the MFP controller 1000 in order to manage acorresponding job. Tables 1300 a, 1300 b, and 1300 c, respectively foractive jobs, hold jobs, and hold job list display exist in the jobmanagement table 1300. Upon detecting that either the “job name” button901 or the “date/time” button 902 in FIG. 9 has been touched, the MFPcontroller 1000 decides a display format of the hold job list screen.Subsequently, based on the job management table 1300 b for hold jobs,the job management table 1300 c for hold job list display isreconstructed. Here, for example, an array order of job IDs of the jobmanagement table 1300 c for hold job list display is changed incorrespondence to a display order such as that denoted by referencenumeral 1200 in FIG. 12. Therefore, by displaying print jobs accordingto the array order of the job management table 1300 c for hold job listdisplay, a list of held print jobs can be displayed in a display orderchanged by the most latest operation by the user. The attributeinformation management table 1301 stores the respective attributes ofprint jobs. In addition, an attribute ID corresponding to each print joband a setting value corresponding to the attribute ID are registered inthe attribute information management table 1301. Moreover, image data1302 is managed on a per-page basis for each print job.

FIG. 14 is a diagram describing an example of a user informationmanagement table for managing user information of the MFP 100 accordingto the present embodiment. The user information management table (arrayretaining unit) is also retained in the HDD 1500.

The user information management table includes user IDs, user names,passwords, and job list display formats. By default, “null” is stored inall user name and password fields, and any of “ascending order ofdate/time”, “descending order of date/time”, “ascending order of jobname”, and “descending order of job name” is stored in the job listdisplay format fields. When “null” is stored in all user name andpassword fields, the MFP controller 1000 determines that a user name anda password have not been set for the MFP 100. On the other hand, if dataother than “null” is stored, then the MFP controller 1000 determinesthat a user name and a password have been set.

If it is determined that a user name and a correct password have beeninputted on the login screen represented by reference numeral 910 shownin FIG. 9, the MFP controller 1000 reads a job list display formatassociated with a user ID thereof from the HDD 1500. Subsequently, basedon the job management table 1300 b for hold jobs shown in FIG. 13, thejob management table 1300 c for hold job list display is reconstructed.

Next, a processing procedure of the MFP controller 1000 according to thepresent embodiment will be described in accordance with the flowchartsshown in FIGS. 15, 16A, and 16B.

FIG. 15 is a flowchart describing processing by the MFP controller 1000according to the present embodiment. A program that executes thisprocessing is stored in the RAM 302 upon execution and is executed underthe control of the CPU 301.

When the MFP 100 is powered on, in step S201, the MFP controller 1000waits for print data to be received. When the MFP controller 1000detects reception of the print data, the process proceeds to step S202to perform input processing of the print data. The processing of thesteps S201 and S202 is the processing of the network interfacecontroller 1601 to be executed by the MFP controller 1000.

Next, the MFP controller 1000 advances processing to step S203 toexecute the processing of the job ticket analyzer 1602 and analyze theinputted print data. As a result of the analysis, the MFP controller1000 stores print data (PDL data) in the reception buffer 1610 of theHDD 1500. In addition, the MFP controller 1000 analyzes a job ticket todetermine whether the job is for storage to the Hold queue 1612 orregular printing. If it is determined that the job is for storage to theHold queue 1612, then the MFP controller 1000 performs processing forregistering the job in the job management table 1300 b for hold jobs. Onthe other hand, in the case that it is determined for the regularprinting, since the job is to be registered as-is in the print executionqueue, the MFP controller 1000 performs processing for registering thejob in the job management table 1300 a for active jobs.

The MFP controller 1000 next advances processing to step S204 to analyzePDL data stored in the reception buffer 1610 (details on PDL dataanalysis processing will be described later). Next, the MFP controller1000 proceeds to step S205 to determine whether a command is a pageclose instruction or not (including checking whether the command is aninstruction indicating the end of a single page). If the MFP controller1000 determines that the command is the page close instruction, then theMFP controller 1000 advances processing to step S206 to performprocessing for recognizing an intermediate code generated up to then asone page's worth of data. An intermediate code is to be managed on aper-page basis as described earlier.

On the other hand, if the MFP controller 1000 determines in step S205that the command is other than the page close instruction, the MFPcontroller 1000 advances processing to step S207 and generates anintermediate code with a format suitable for internal processing inaccordance with each command.

After executing either step S206 or step S207 in this manner, the MFPcontroller 1000 advances processing to step S208 and determines whetherdata to be analyzed exists in the reception buffer 1610 or not. If theMFP controller 1000 determines that data to be analyzed exists, then theprocess returns to step S204 to repeat the PDL data analysis processing.On the other hand, if the MFP controller 1000 determines that data to beanalyzed does not exist in the reception buffer 1610, then the processadvances to step S209. In step S209, the MFP controller 1000 determineswhether an intermediate code of one page's worth or more exists or not.If the MFP controller 1000 determines that the intermediate code of onepage's worth or more does not exist, then the MFP controller 1000proceeds to the reception processing in step S201. If the MFP controller1000 determines that the intermediate code of one page's worth or moreexists, then the process proceeds to S210 to read the intermediate codeof one page's worth from the intermediate buffer 1611 and performprocessing for generating image data based on the intermediate code. TheMFP controller 1000 next proceeds process to step S211 to determinewhether or not the print job is a job for which storage in the Holdqueue 1612 has been specified. In the case of a job for which storage inthe Hold queue 1612 has been specified, the MFP controller 1000 advancesprocessing to step S212 and stores the generated image data in the Holdqueue 1612 secured in the HDD 1500.

On the other hand, if the MFP controller 1000 determines that the printjob is a job for which storage in the Hold queue 1612 has not beenspecified, then the MFP controller 1000 advances processing to stepS213. In step S213, the MFP controller 1000 stores one page's worth ofimage data in the image buffer 1613. The process then proceeds to stepS214 to register the job ID of the page stored in the image buffer 1613in the print execution queue if the stored page is a top page of aregular print job. At this point, if print processing of another job isnot being performed or, in other words, if the job ID is registered tothe top of the print execution queue, one page's worth of image data isread from the image buffer 1613. Subsequently, the MFP controller 1000converts the image data into a video signal and commences processing fortransferring the video signal to the printer controller 1607.Accordingly, the printer controller 1607 is to actually perform printingon a recording paper (sheet) based on the video signal and performprocessing for discharging the printed recording paper to the outside ofthe MFP 100.

The video signal transfer to the printer controller 1607 and the storageprocessing to the image buffer 1613 are not synchronous. Normally, sincea conversion rate to image data proceeds at a faster rate than theprinting speed of the printer unit 160, image data of not yet printedpages gradually accumulate in the image buffer 1613.

After the processing of step S214 as described above, the processreturns to step S209. When one page's worth of intermediate code has notbeen completed in step S209, the process further returns to step S201 toawait subsequent input data.

FIGS. 16A and 16B are flowcharts describing display processing of a holdjob list by the MFP controller 1000 and processing in response to aninput made on the touch panel by an operator, according to the presentembodiment. The MFP controller 1000 executes the processing representedby the flowcharts shown in FIGS. 16A and 16B as separate tasks from themain processing shown in FIG. 15. A program that executes thisprocessing is stored in the RAM 302 upon execution thereof and isexecuted under the control of the CPU 301.

First, in step S301, the MFP controller 1000 reads the user informationmanagement table shown in FIG. 14 from the HDD 1500 and determineswhether a user name and a password have been set for the MFP 100. If theMFP controller 1000 determines that a user name and a password have notbeen set for the MFP 100, then the MFP controller 1000 omits input of auser name and a password and advances processing to step S304.

On the other hand, if the MFP controller 1000 determines that a username and a password have been set for the MFP 100, then the MFPcontroller 1000 advances processing to step S302 to display a loginscreen as shown by numeral 910 in FIG. 9. The process proceeds to stepS303, and the MFP controller 1000 determines whether the user name andthe password inputted by the operator are correct or not. If correct,the MFP controller 1000 advances processing to step S304, but if not,the process returns to step S302.

In step S304, the MFP controller 1000 reconstructs the job managementtable 1300 c for hold job list display based on the job management table1300 b for hold jobs in accordance with the job list display format ofthe user information management table. The process advances to step S305to display a hold job list of the user in accordance with theinformation of the job management table 1300 c for hold job listdisplay.

Next, the MFP controller 1000 advances processing to step S306 to awaitkey input. Upon detecting key input, the MFP controller 1000 advancesprocessing to step S307. In step S307, based on location information ofa touch by the operator from the console unit 1008, the MFP controller1000 determines whether or not the “job name” button 901 or the“date/time” button 902 has been touched. Hereinafter, a simpleexpression such as “the MFP controller 1000 determines whether an “xxxx”button has been touched or not” shall be used. If the MFP controller1000 detects that either the “job name” button 901 or the “date/time”button 902 has been touched, then the MFP controller 1000 advancesprocessing to step S308 to display a popup dialog such as shown bynumeral 10001 in FIG. 10A. In the popup dialog, based on the touchedbutton and the job management table 1300 c for hold job list display, amessage is displayed which indicates that sort processing for sortingthe order of the print job list display is in progress. The processadvances to step S309, and the MFP controller 1000 decides a new joblist display format from the type of the touched button and the job listdisplay format stored in the user information management table, andstores a value thereof in the user information management table (FIG.14). For example, if the “job name” button 901 has been touched and“descending order of job names” is registered as the job list displayformat of a corresponding user name, “descending order of job names” isreplaced with “ascending order of job names”. In addition, if the“date/time” button 902 has been touched and “ascending order ofdate/time” is registered as the job list display format of acorresponding user name, “ascending order of date/time” is replaced with“descending order of date/time”.

The process proceeds to step S310, and the MFP controller 1000reconstructs the job management table 1300 c for hold job list displaybased on the job management table 1300 b for hold jobs in accordancewith the job list display format of the user information managementtable. Once sort processing is concluded in this manner, the MFPcontroller 1000 advances processing to step S311 to close the popupdialog. Subsequently, the process proceeds to step S312 to redisplay ahold job list in accordance with the information of the job managementtable 1300 c for hold job list display, and the process proceeds to stepS313 (FIG. 16B). Meanwhile, even if the MFP controller 1000 determinesin step S307 that the touched button is neither the “job name” button901 nor the “date/time” button 902, the MFP controller 1000 advancesprocessing to step S313 (FIG. 16B).

In step S313, the MFP controller 1000 determines whether or not a printjob has been selected. If the MFP controller 1000 determines that aprint job has been selected, the MFP controller 1000 advances processingto step S314. In step S314, the MFP controller 1000 determines, forexample, whether or not the “preview” button shown in FIG. 12 has beentouched. If the MFP controller 1000 determines that the “preview” buttonhas been touched, the MFP controller 1000 advances processing to stepS315 to display a separate screen for previewing the top page of theselected job, and changes the display contents of the user interfacescreen (display change). The MFP controller 1000 advances processing tostep S316 to determine whether or not a button for closing the separatescreen for previewing has been touched. If the MFP controller 1000determines that the button for closing the separate screen has beentouched, the MFP controller 1000 advances processing to step S317. Instep S317, the MFP controller 1000 reconstructs the job management table1300 c for hold job list display based on the job management table 1300b for hold jobs stored in the HDD 1500 in accordance with the job listdisplay format (FIG. 14) of the user information management table. Next,the MFP controller 1000 advances processing to step S318 to close theseparate screen. Subsequently, the MFP controller 1000 advancesprocessing to step S319 to redisplay a hold job list in accordance withthe information of the job management table 1300 c for hold job listdisplay, and the process proceeds to step S329. Accordingly, after theuser interface screen is switched by an user operation and uponconclusion of processing by the user operation, display control isperformed so that a job list screen is displayed in an array set priorto the user operation such as “preview”, “test print”, “print”, “edit”,or the like.

On the other hand, if it is determined that the “preview” button has notbeen touched in step S314, then the MFP controller 1000 advancesprocessing to step S320 to determine whether the “test print” button hasbeen touched or not. If the MFP controller 1000 determines that the“test print” button has been touched, then the MFP controller 1000advances processing to step S321 to display a separate screen forsetting test printing of the selected job. Next, the MFP controller 1000advances processing to step S316 to determine whether or not a buttonfor closing the separate screen for setting test printing has beentouched.

On the other hand, if the MFP controller 1000 determines in step S320that the “test print” button has not been touched, then the MFPcontroller 1000 proceeds to step S322 to determine whether or not the“print” button 903 has been touched. If the MFP controller 1000determines that the “print” button has been touched, then the MFPcontroller 1000 advances processing to step S323 to commence printprocessing of the selected job. Next, the MFP controller 1000 advancesprocessing to step S324 to display a separate screen for an active joblist. Subsequently, the MFP controller 1000 advances processing to stepS316 to determine whether or not a button for closing the separatescreen for an active job list has been touched.

Moreover, if the MFP controller 1000 determines in step S322 that the“print” button 903 has not been touched, then the MFP controller 1000proceeds processing to step S325 to determine whether or not the “edit”button has been touched. If the MFP controller 1000 determines that the“edit” button has been touched, then the MFP controller 1000 advancesprocessing to step S326 to display a separate screen for job ticketediting. Subsequently, the MFP controller 1000 advances processing tostep S316 to determine whether or not a button for closing the separatescreen for job ticket editing has been touched.

Furthermore, if the MFP controller 1000 determines in step S325 that the“edit” button has not been touched, then the MFP controller 1000proceeds processing to step S327 to determine whether or not the“delete” button has been touched. If the MFP controller 1000 determinesthat the “delete” button has been touched, then the MFP controller 1000advances processing to step S328 to delete the selected job. Morespecifically, the MFP controller 1000 deletes relevant data from the jobmanagement table for hold jobs and erases image data of the Hold queue1612.

On the other hand, if the MFP controller 1000 determines in step S313that a print job has not been selected or determines in step S327 thatthe “delete” button has not been touched, then the MFP controller 1000advances processing to step S329. In step S329, the MFP controller 1000determines whether or not the “logout” button has been touched. If it isdetermined that the “logout” button has been touched, then the MFPcontroller 1000 returns processing to step S302 (FIG. 16A). On the otherhand, if the MFP controller 1000 determines in step S329 that the“logout” button has not been touched, then the MFP controller 1000returns to the processing of step S306 (FIG. 16A).

As described above, according to the present embodiment, a useroperation regarding a print job is performed on a separate screen suchas the test print setting screen which differs from the hold job listscreen, and when subsequently returning to the hold job list screen forredisplay, the hold job list screen prior to the user operation can berestored. In other words, by storing a job list display format in theuser information management table, when returning to an original listscreen after switching to a different screen display, the userinformation management table can be referenced to enable display in theoriginal job list display format. Accordingly, the operator can noweasily find a desired print job from the job list display.

In addition, according to the present embodiment, even in a case where aprinting apparatus is shared and used by a plurality of dedicatedoperators, by storing job list display formats in the user informationmanagement table, print jobs can now be list-displayed by each user in adesired display format.

Moreover, in the present embodiment, while an array change request hasbeen described using a case where the “job name” button or the“date/time” button is specified, the present invention is not limitedthereto. Alternatively, providing and specifying a button for size (datavolume), file type, or the like shall suffice. In such a case, an arrayorder of print jobs is to be changed in accordance with size or filetype. In addition, the plurality of item buttons may be arranged so asto be specifiable, whereby a display order (array) may be changed bycombining items of specified buttons.

Heretofore, an embodiment of the present invention has been describedthrough an example in which the present invention is applied to an MFPor a multifunction peripheral as a printing apparatus. However, itshould be obvious that an independent printing apparatus including aconsole unit and a large-capacity storage device described in thepresent embodiment shall also suffice.

Furthermore, in the present embodiment, means for authenticating a userhas been described through an example of a password authenticationmethod in which a user name and a password are inputted via the consoleunit 1008. However, other authentication processing may be applied tothe printing apparatus, such as performing card authentication by havingthe operator set an IC card on a card reader and reading information onthe IC card.

OTHER EMBODIMENTS

The present invention can also be achieved by having a program ofsoftware realizing the functions of the embodiment described abovesupplied directly or remotely to a system or an apparatus, and having acomputer of the system or the apparatus read out and execute thesupplied program. In this case, a program format need not necessarily beadhered to as long as the functions of the program are provided.

Therefore, a program code itself that is installed to the computer inorder to have the functions and processing of the present inventionrealized through the computer also achieves the present invention. Inother words, the claims of the present invention also include acomputer-executable program itself for realizing the functions andprocessing of the present invention. In this case, as long as thefunctions of the program are provided, the format of the program isirrelevant and may be an object code, an interpreter-executed program,script data to be supplied to an OS, and the like.

In addition, the present invention can also be achieved by modes otherthan realizing the functions of the embodiment described above by havinga computer read out and execute a program. For example, the functions ofthe embodiment described above can be realized by having an OS or thelike running on a computer perform a part or all of the actualprocessing based on instructions of the program.

Furthermore, a program read out from a storage medium may be arranged tobe written into a memory provided on an expansion board inserted into acomputer or on an expansion unit connected to the computer. In thiscase, subsequently, a CPU or the like provided on the expansion board orthe expansion unit performs a part of or all of the actual processingbased on instructions contained in the program, whereby the functions ofthe embodiment described earlier are realized by such processing.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims priority from Japanese Patent Application No.2008-172646, filed Jul. 1, 2008, which is hereby incorporated byreference herein in its entirety.

1. A printing apparatus comprising: a display unit that displays a joblist of a plurality of print jobs to be printed by a printing unit; areceiving unit that receives a change request for changing an array ofthe plurality of print jobs in the job list between a first array and asecond array being different from the first array; and a display controlunit that causes the display unit to display a window related to a printjob in response to a user operation with respect to the print job of thejob list, wherein when the window displayed on the display unit isclosed, the display control unit causes the display unit to display theplurality of print jobs on the job list in the same array as the firstor second array in which the plurality of print jobs were displayedbefore the user operation.
 2. The printing apparatus according to claim1, further comprising: an authentication unit that authenticates a user;and an array holding unit that holds the first or the second array inassociation with information of the user authenticated by theauthentication unit, wherein if the authentication by the authenticationunit is successful, the display control unit causes the display unit todisplay the job list of the plurality of print jobs in the first or thesecond array held in the array holding unit.
 3. The printing apparatusaccording to claim 1, wherein the display control unit causes thedisplay unit to display a dialog, as the window related to a print job,indicating a state in which the array of the plurality of print jobs isbeing changed in response to a user operation with respect to the printjob of the job list.
 4. The printing apparatus according to claim 1,wherein the user operation is input by specifying a button displayed ona screen of the job list.
 5. The printing apparatus according to claim1, wherein the change request is input by an operation for specifying aprint job among the plurality of print jobs on the job list.
 6. Theprinting apparatus according to claim 5, wherein the display controlunit causes the display unit to display the plurality of print jobs inan ascending order or in a descending order in response to the changerequest.
 7. A method of controlling a printing apparatus, the methodcomprising: a display step of displaying a job list of a plurality ofprint jobs to be printed by a printing unit; a reception step ofreceiving a change request for changing an array of the plurality ofprint jobs in the job list between a first array and a second arraybeing different from the first array; and a display control step ofcausing the display step to display a window related to a print job inresponse to a user operation with respect to the print job of the joblist, wherein when the window is closed, the display control step causesthe display step to display the plurality of print jobs on the job listin the same array as the first or second array in which the plurality ofprint jobs were displayed before the user operation.
 8. The methodaccording to claim 7, further comprising: an authentication step ofauthenticating a user; and an array holding step of holding the first orthe second array in association with information of the userauthenticated in the authentication step, wherein if the authenticationin the authentication step is successful, the display control stepcauses the display step to display the job list of the plurality ofprint jobs in the first or the second array held in the array holdingstep.
 9. The method according to claim 7, wherein the display controlstep causes the display step to display a dialog, as the window relatedto a print job, indicating a state in which the array of the pluralityof print jobs is being changed in response to a user operation withrespect to the print job of the job list.
 10. The method according toclaim 7, wherein the user operation is input by specifying a buttondisplayed on a screen of the job list.
 11. The method according to claim7, wherein the change request is input by an operation for specifying aprint job among the plurality of print jobs on the job list.
 12. Themethod according to claim 11, wherein the display control step causesthe display step to display the plurality of print jobs in an ascendingorder or in a descending order in response to the change request.
 13. Anon-transitory computer-readable storage medium storing a program thatcauses a computer to execute the control method according to claim 7.14. A printing apparatus comprising: a display unit that displays a joblist of a plurality of print jobs to be printed by a print unit; anauthentication unit that authenticates a user; an array holding unitthat holds a display method for displaying the job list in associationwith information of the user authenticated by the authentication unit;and a control unit that controls the display unit to display the joblist in a display method, held by the array holding unit, correspondingto a user authenticated by the authentication unit, if theauthentication by the authentication unit is successful.
 15. Theprinting apparatus according to claim 14, wherein the display methodincludes methods for displaying the plurality of print jobs in an orderof date of the print jobs or in an order of name of the print jobs. 16.The printing apparatus according to claim 15, wherein the display methodincludes methods for displaying the plurality of print jobs in anascending order or in a descending order.
 17. A method of controlling aprinting apparatus, comprising: a display step of displaying a job listof a plurality of print jobs to be printed by a print unit; anauthentication step of authenticating a user; an array holding step ofholding a display method for displaying the job list in association withinformation of the user authenticated in the authentication step; and acontrol step of controlling the display step to display the job list ina display method, held in the array holding step, corresponding to auser authenticated in the authentication step, if the authentication inthe authentication unit is successful.
 18. The method according to claim17, wherein the display method includes methods for displaying theplurality of print jobs in an order of date of the print jobs or in anorder of name of the print jobs.
 19. The control method according toclaim 18, wherein the display method includes methods for displaying theplurality of print jobs in an ascending order or in a descending order.20. A non-transitory computer-readable storage medium storing a programthat causes a computer to execute the control method according to claim17.
 21. A printing apparatus comprising: a printing unit that print animage on recording paper; a display unit that displays a job list of aplurality of print jobs to be printed by the printing unit; a receivingunit that receives a change request for changing an array of theplurality of print jobs on the job list to a second array beingdifferent from a first array; and a display control unit that causes thedisplay unit to display a window related to a print job in response to auser operation with respect to the print job of the job list; whereinthe display control unit causes the display unit to display the job listof the plurality of print jobs in the second array in a case that thereceiving unit receives the change request after the window related tothe print job is displayed on the display unit, and the display controlunit causes the display unit to display the job list of the plurality ofprint jobs in the first array in a case that the receiving unit does notreceive the change request after the window related to the print job isdisplayed on the display unit.
 22. A method of controlling a printingapparatus comprising: a print step of printing an image on recordingpaper; a display step of displaying a job list of a plurality of printjobs to be printed in the printing step; a reception step of receiving achange request for changing an array of the plurality of print jobs onthe job list to a second array being different from a first array; and adisplay control step of causing the display step to display a windowrelated to a print job in response to a user operation with respect tothe print job of the job list; wherein the display control step causesthe display step to display the job list of the plurality of print jobsin the second array in a case that the receiving step receives thechange request after the window related to the print job is displayed onthe display unit, and the display control step causes the display stepto display the job list of the plurality of print jobs in the firstarray in a case that the receiving step does not receive the changerequest after the window related to the print job is displayed on thedisplay unit.